<?php

class ChiTietCuocKiemTraController extends BaseController {

    private $ctckt;

    //Ham xay dung
    function __construct() {
        $this->ctckt = new ChiTietCuocKiemTra();
    }

    //Phuong thuc hien ds thong tin
    public function index() {
        try {
            $id = Input::get("id");
            $data = DB::table('vcuoctt')->select('*')->where('ID', $id)->first();
//            lay tat ca cac mau de tao lap ho so
            $mau = new Don();
            $dons = $mau->GetList(null);
//            lay tat ca cac loai hanh vi vi pham
            $hvvp = DB::table('vipham')->select('*')->get();
            return View::make('tienhanhtt.index')
                            ->with('row', $data)
                            ->with('dons', $dons)
                            ->with('hvs', $hvvp)
                            ->with("title", "Tiến hành kiểm tra");  
        } catch (Exception $ex) {
            return View::make('tienhanhtt.error')
                            ->with("title", "Lỗi tiến hành kiểm tra"); 
        }  
    }

    //Phuong thuc hien khung them thong tin
    public function add() {
       
    }
    
    //phuong thuc xem ho so kiểm tra
    public function viewDonTT(){
        $idd = Input::get('idd');
        $idct = Input::get('idct');
        $status = Input::get('status');
        $idnguoiky = Input::get('idnguoiky');
		$sotrang = Input::get('sotrang');
		$soban = Input::get('soban');
        try {
            return View::make('tienhanhtt.view')
                                ->with('idd', $idd)
                                ->with('idct', $idct)
                                ->with('status', $status)
                                ->with('idnguoiky', $idnguoiky)
								->with('sotrang', $sotrang)
								->with('soban', $soban)
                                ->with('title', 'Hồ sơ kiểm tra thuế!');
        } catch (Exception $ex) {
            return View::make('ql=tienhanhtt?id='.$idct)
                                ->with('error', 'Lỗi không xem hồ sơ được!');
        }
    }
    
    //Phương thức save nội dung kiểm tra
    public function saveNoiDung() {
        if (Session::has('noidung')) {
            Session::push('noidung', [
                "chitieu"   => Input::get("chitieu_nd"),
                "N1"        => Input::get("n1_nd"),
                "N2"        => Input::get("n2_nd"),
                "N3"        => Input::get("n3_nd")
            ]);
        } else {
            Session::put('noidung', [
                0 => [
                       "chitieu"   => Input::get("chitieu_nd"),
                        "N1"        => Input::get("n1_nd"),
                        "N2"        => Input::get("n2_nd"),
                        "N3"        => Input::get("n3_nd")
                    ]
            ]);
        }
        echo "Thêm nội dung thành công";
    }
    
    //Phương thức save nghĩa vụ kiểm tra
    public function saveNghiaVu() {
        if (Session::has('nghiavu')) {
            Session::push('nghiavu', [
                "chitieu"   => Input::get("chitieu_nv"),
                "N1"        => Input::get("n1_nv"),
                "N2"        => Input::get("n2_nv"),
                "N3"        => Input::get("n3_nv"),
                "N4"        => Input::get("n1_nv"),
                "N5"        => Input::get("n2_nv"),
                "N6"        => Input::get("n3_nv"),
                "N7"        => Input::get("n1_nv"),
                "N8"        => Input::get("n2_nv")
            ]);
        } else {
            Session::put('nghiavu', [
                0 => [
                       "chitieu"   => Input::get("chitieu_nv"),
                        "N1"        => Input::get("n1_nv"),
                        "N2"        => Input::get("n2_nv"),
                        "N3"        => Input::get("n3_nv"),
                        "N4"        => Input::get("n1_nv"),
                        "N5"        => Input::get("n2_nv"),
                        "N6"        => Input::get("n3_nv"),
                        "N7"        => Input::get("n1_nv"),
                        "N8"        => Input::get("n2_nv")
                    ]
            ]);
        }
        echo "Thêm nghĩa vụ thành công";
    }
    
    //Phuong thuc xoa tat ca noi dung
    public function xoaNoiDung() {
        if(Session::has('noidung')) {
            Session::forget('noidung');
        }
        return Redirect::back()
                    ->with('warning', 'Đã xóa tất cả nội dung!');
    }
    
    //Phuong thuc xoa tat ca nghia vu
    public function xoaNghiaVu() {
        if(Session::has('nghiavu')) {
            Session::forget('nghiavu');
        }
        return Redirect::back()
                    ->with('warning', 'Đã xóa tất cả nghĩa vụ!');
    }

    //Phuong thuc xu ly luu thong tin moi
    public function save() {
            $id = Input::get("idctt");
            $date = date("d");
            $month = date("m");
            $year = date("Y");
            $data = array(
                  "ID_CUOC_TT" => Input::get("idctt"),
                  "LY_DO_CL" => Input::get("ldcl"),
                  "THTH_NV" => Input::get("ththnv"),
                  "KETQUA_KT" => Input::get("kqkt"),
                  "LOAI_VP_ID" => Input::get("loaihvvp"),
                  "Hanh_Vi_VP" => Input::get("hvvp"),
                  "CAN_CU" => Input::get("cc"),
                  "YEU_CAU" => Input::get("yc"),
                  "KIEN_NGHI" => Input::get("kn"),
                  "HT_XU_PHAT" => Input::get("htxp"),
                  "HT_KP_HAU_QUA" => Input::get("htkphq"),
                  "GIAY_NT_SO" => Input::get("giayntso"),
                  "GHI_CHU" => Input::get("gc"),
                  "NG_BAO_CAO" => Input::get("ngbc"),
                  "NG_LAP_PHIEU_TD" => Input::get("nglp"),
                  "SO_THONG_TU" => Input::get("sott"),
                  "SO_QUYET_DINH" => Input::get("soqd"),
                  "NGUOI_BAN_HANH" => Input::get("nbh"),
                  "SO_KL" => Input::get("sokl"),
                  "NGUOI_KY" => Input::get("nk"),
                  "DATE" => $date,
                  "MONTH" => $month,
                  "YEAR" => $year,
                  "GIO_BD_LL" => Input::get("tgbdll"),
                  "GIO_KT_LL" => Input::get("tgktll"),
              );
            
                if((Input::get("ngaylbb") != null)) {
                    $data['TG_LAP_BB'] = date("d/m/Y", strtotime(Input::get("ngaylbb")));
                }
                if((Input::get("ngaygnt") != null)) {
                    $data['TG_GIAY_NT'] = date("d/m/Y", strtotime(Input::get("ngaygnt")));
                }
                if((Input::get("ngaybc") != null)) {
                    $data['TG_BAO_CAO'] = date("d/m/Y", strtotime(Input::get("ngaybc")));
                }
                if((Input::get("ngaylaptd") != null)) {
                    $data['TG_LAP_PHIEU_TD'] = date("d/m/Y", strtotime(Input::get("ngaylaptd")));
                }
                if((Input::get("ngaybh") != null)) {
                    $data['TG_BAN_HANH'] = date("d/m/Y", strtotime(Input::get("ngaybh")));
                }
                if((Input::get("ngaykl") != null)) {
                    $data['TG_KET_LUAN'] = date("d/m/Y", strtotime(Input::get("ngaykl")));
                }
                if((Input::get("ngaynl") != null)) {
                    $data['NGAY_LL_BB'] = date("d/m/Y", strtotime(Input::get("ngaynl")));
                }
                if((Input::get("ngaynl") != null)) {
                    $data['NGAY_LL_BB'] = date("d/m/Y", strtotime(Input::get("ngaynl")));
                }
            
                if ($this->ctckt->validation(Input::all())) {
                    try {
                        DB::table('chi_tiet_cuoc_tt')->insert($data);
//                        cap nhat lai du lieu bang cuoc kiểm tra
                        DB::table('cuoc_tt')->where('ID', $id)->update(array('STATUS_TTTT' => '1'));
                        //Lay thong tin chi tiet cuoc thanh tra moi luu vao
                        $chitiet = DB::table('chi_tiet_cuoc_tt')->where('ID_CUOC_TT', $id)->first();
                        //luu vao bang noi dung
                        if(Session::has('noidung')) {
                            foreach (Session::get('noidung') as $key => $value) {
                                $data_nd = array(
                                    "id_ct"    => $chitiet->ID,
                                    "chitieu"   => $value['chitieu'],
                                    "N1"    => $value['N1'],
                                    "N2"    => $value['N2'],
                                    "N3"    => $value['N3']
                                );
                                DB::table('noidung')->insert($data_nd);
                            }
                        }
                        //Luu vao bang nghia vu
                        if(Session::has('nghiavu')) {
                            foreach (Session::get('nghiavu') as $key => $value) {
                                $data_nv = array(
                                    "id_ct"    => $chitiet->ID,
                                    "chitieu"   => $value['chitieu'],
                                    "N1"    => $value['N1'],
                                    "N2"    => $value['N2'],
                                    "N3"    => $value['N3'],
                                    "N4"    => $value['N4'],
                                    "N5"    => $value['N5'],
                                    "N6"    => $value['N6'],
                                    "N7"    => $value['N7'],
                                    "N8"    => $value['N8']
                                );
                                DB::table('nghiavu')->insert($data_nv);
                            }
                        }
                        return Redirect::back()
                                ->withInput()
                                ->with('flag', '1')
                                ->with('id', $id)
                                ->with('success', 'Thêm thông tin thành công!'); 
                    } catch (Exception $exc) {
                        return Redirect::back()
                                ->withInput()
                                ->with('error', 'Không lưu dữ liệu được!');
                    }
                }
                return Redirect::back()
                                ->withInput()
                                ->with('error', 'Dữ liệu nhập vào không phù hợp!');
    }

    //Phuong thuc hien khung sua thong tin xac dinh
    public function edit() {
      
    }

    //Phuong thuc xu ly luu thong tin da sua
    public function store() {
            $id = Input::get("idctt");
            $date = date("d");
            $month = date("m");
            $year = date("Y");
            $data = array(
                  "ID_CUOC_TT" => $id,
                  "ID_NOIDUNG_KT" => Input::get("noidung_bb"),
                  "LY_DO_CL" => Input::get("ldcl"),
                  "THTH_NV" => Input::get("ththnv"),
                  "KETQUA_KT" => Input::get("kqkt"),
                  "LOAI_VP_ID" => Input::get("loaihvvp"),
                  "Hanh_Vi_VP" => Input::get("hvvp"),
                  "CAN_CU" => Input::get("cc"),
                  "YEU_CAU" => Input::get("yc"),
                  "KIEN_NGHI" => Input::get("kn"),
                  "HT_XU_PHAT" => Input::get("htxp"),
                  "HT_KP_HAU_QUA" => Input::get("htkphq"),
                  "GIAY_NT_SO" => Input::get("giayntso"),
                  "GHI_CHU" => Input::get("gc"),
                  "NG_BAO_CAO" => Input::get("ngbc"),
                  "NG_LAP_PHIEU_TD" => Input::get("nglp"),
                  "SO_THONG_TU" => Input::get("sott"),
                  "SO_QUYET_DINH" => Input::get("soqd"),
                  "NGUOI_BAN_HANH" => Input::get("nbh"),
                  "SO_KL" => Input::get("sokl"),
                  "NGUOI_KY" => Input::get("nk"),
                  "DATE" => $date,
                  "MONTH" => $month,
                  "YEAR" => $year,
                  "NGAY_LL_BB" => date("d/m/Y", strtotime(Input::get("ngaynl"))),
                  "GIO_BD_LL" => Input::get("tgbdll"),
                  "GIO_KT_LL" => Input::get("tgktll"),
              );
                if((Input::get("ngaylbb") != null)) {
                    $data['TG_LAP_BB'] = date("d/m/Y", strtotime(Input::get("ngaylbb")));
                }
                if((Input::get("ngaygnt") != null)) {
                    $data['TG_GIAY_NT'] = date("d/m/Y", strtotime(Input::get("ngaygnt")));
                }
                if((Input::get("ngaybc") != null)) {
                    $data['TG_BAO_CAO'] = date("d/m/Y", strtotime(Input::get("ngaybc")));
                }
                if((Input::get("ngaylaptd") != null)) {
                    $data['TG_LAP_PHIEU_TD'] = date("d/m/Y", strtotime(Input::get("ngaylaptd")));
                }
                if((Input::get("ngaybh") != null)) {
                    $data['TG_BAN_HANH'] = date("d/m/Y", strtotime(Input::get("ngaybh")));
                }
                if((Input::get("ngaykl") != null)) {
                    $data['TG_KET_LUAN'] = date("d/m/Y", strtotime(Input::get("ngaykl")));
                }
                if((Input::get("ngaynl") != null)) {
                    $data['NGAY_LL_BB'] = date("d/m/Y", strtotime(Input::get("ngaynl")));
                }
//                if ($this->ctckt->validation(Input::all())) {
                    try {
                        $query = DB::table('chi_tiet_cuoc_tt')->select('*')->where('ID_CUOC_TT', $id)->get();
                        if(count($query) == 1) {
                            $idct = DB::table('chi_tiet_cuoc_tt')->select('*')->where('ID_CUOC_TT', $id)->first();
                            $this->ctckt->StoreIn($data, $idct->ID);
                        } else {
                            DB::table('chi_tiet_cuoc_tt')
                                        ->insert($data);
                        }
                        return Redirect::back()
                                ->withInput()
                                ->with('flag', '1')
                                ->with('id', $id)
                                ->with('success', 'Chỉnh sửa thông tin thành công!'); 
                    } catch (Exception $exc) {
                        return Redirect::back()
                                ->withInput()
                                ->with('error', 'Không lưu dữ liệu được!');
                    }
//                }
//                return Redirect::back()
//                                ->withInput()
//                                ->with('error', 'Dữ liệu nhập vào không phù hợp!');
    }

    //Phuong thuc xoa mot thong tin nao do
    public function remove() {
       
    }

    //Phuong thuc tim kiem thong tin xac dinh theo thuc post
    public function search() {
        if (Request::ajax()) {
            $mst = Input::get('mst');
            try {
                $data = $this->ctckt->GetOneWithMST($mst);
                return Response::json($data);
            } catch (Exception $ex) {
                return Response::json(null);
            }
        }
    }

}
